<?php
include_once('controller/C_Base.php');
include_once('model/M_Article.php');
/** 
 *  @author VGireev 
 *	@REVISION:  $Id: C_Article_Once.php 11 2011-12-18 12:52:37Z host.xserver@gmail.com $
 *  @brief Файл класса C_Once
 *  © myCompany 2011
 *
 *  Контроллер вывода одиночной
 *  полной статьи
 */
class C_Article_Once extends C_Base 
{
	private $article; //!< статья
		
    function __construct() 
    {
    	parent::__construct();
    }
		
    // Виртуальный обработчик запроса
    protected function OnInput() 
    {
		// C_Base.
		parent::OnInput();
		
		// Менеджер пользователей
		$mUsers = M_Users::Instance();
		
		// Обработка отправки формы
		// Принимаем id пользователя
		if ($this->IsPost()) {
		
			$id							= $_POST['id'];
			$mArticles					= M_Article::Instance();
			
			// вынимаем статью из БД
			$this->article				= $mArticles->Get($id);
			$this->article['article']	= stripslashes($this->article['article']);
			$this->title				= $this->article['title'];
		}	
    }
	
    // Виртуальный генератор HTML
    protected function OnOutput() 
    {   	
		// Менеджер пользователей
		$mUsers = M_Users::Instance();
		
		// Шаблон меню
		// Формирование меню для пользователя либо администратора
		if ($mUsers->Can('USE_SECRET_FUNCTIONS')) {
			$vars_menu	= array('items' => C_Base::GetMenuItems(true));
		}
		else {
			$vars_menu	= array('items' => C_Base::GetMenuItems(false));
		};

    	$this->menu		= $this->View('/view/tpl_menu.php', $vars_menu);
		
        // Основной шаблон страницы
    	$vars_content 	= array('title'		=>$this->article['title'],
							    'article'	=> $this->article['article'],
							    'id'		=> $this->article['id_article']
    	                       );

		// Выбираем шаблон вывода статьи либо простой шаблон
		// Либо шаблон с панелью редактирования
    	if ($mUsers->Can('USE_SECRET_FUNCTIONS')) {
		
			$this->content		= $this->View('/view/tpl_form_secret.php', $vars_content);
		}
		else {
			$this->content		= $this->View('/view/tpl_form.php', $vars_content);
		}
		$this->title_page		= 'Статьи';
		
		// C_Base.
        parent::OnOutput();
    }
		
}